const fs = require('fs')
const path = require('path')
// 正则，匹配style和script标签
// /s 表示匹配空白字符 /S表示匹配任意字符
const regStype = /<style>[\s\S]*<\/style>/
// 匹配 script标签
const regScript = /<script>[\s\S]*<\/script>/
// 读取文件
fs.readFile(path.join(__dirname, '../', '/file/index.html'), 'utf-8', function (err, dataStr) {
    if (err) {
        // 读取失败
        console.log('err', err)
        return
    } else {
        // 读取成功
        resolveCSS(dataStr)
        resolveScript(dataStr)
        resolveHtml(dataStr)
    }
})
function resolveCSS(htmlStr) {
    // 使用正则提取内容
    const r1 = regStype.exec(htmlStr)
    console.log('r1', r1)
    if (r1) {
        const newCss = r1[0].replace('<style>', '').replace('</style>', '')
        // 写入新文件
        fs.writeFile(path.join(__dirname, '../', '/file/index.css'), newCss, function (err) {
            if (!err) {
                console.log('写入成功')
            } else {
                console.log('err', err)
            }
        })
    }
}
function resolveScript(htmlStr) {
    const scriptStr = regScript.exec(htmlStr)
    if (scriptStr) {
        const newScript = scriptStr[0].replace('<script>', '').replace('</script>', '')
        fs.writeFile(path.join(__dirname, '../', '/file/script.js'), newScript, function (err) {
            if (!err) {
                console.log('写入script成功')
                return
            }
            console.log('写入script失败', err)
        })
    }
}
function resolveHtml(htmlStr){
    const newHtmlStr = htmlStr.replace(regStype,'<link>').replace(regScript,'啊啊啊啊啊啊啊')
    if(htmlStr){
        fs.writeFile(path.join(__dirname,'../','/file/newIndex.html'),newHtmlStr,function(err){
            if (!err) {
                console.log('写入html成功')
                return
            }
            console.log('写入html失败', err)
        })
    }
}